home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 43 / Amiga Format CD43 (1999)(Future Publishing)(GB)(Track 1 of 2)[!][issue 1999-09].iso / -serious- / comms / other / ftransapiv / arexx / ftranswordworth.rexx < prev    next >
OS/2 REXX Batch file  |  1999-06-14  |  4KB  |  130 lines

  1. /* 
  2.  
  3.  -------------------------------------------
  4.  WordWorth Translator By FTranslator Client
  5.  
  6.  Script by Cristian Robert Gallas
  7.  
  8.  Tested with WordWorth 7
  9.  Usage:                                
  10.  Use in ARexx interface of WordWorth
  11.  $VER: FTransWORDWORTH.rexx v0.01 (15.08.96)
  12.  -------------------------------------------
  13.  
  14.  HISTORY
  15.  ----------------------------------------
  16.  v0.01b [15.08.98] - First public beta version.
  17.  ----------------------------------------
  18.  
  19.  [Steps installation]
  20.  
  21.  > Copy FTransWORDWORTH.rexx to WordWorth:WwRexx/
  22.  > Go to Tools/ARexx Macros...
  23.  > Click ADD and select FTransWORDWORTH.rexx
  24.  > Select Close
  25.  > Select Text
  26.  > Go to Tools/ARexx Macros...
  27.  > Select FTransWORDWORTH.rexx and click PLAY
  28.  > Its open new window with translation... :)
  29.  
  30.  0 - English   to Francais
  31.  1 - English   to Deutsch
  32.  2 - English   to Italiano
  33.  3 - English   to Portugues
  34.  4 - English   to Espanol
  35.  5 - Francais  to English
  36.  6 - Deutsch   to English
  37.  7 - Italiano  to English
  38.  8 - Espanol   to English
  39.  9 - Portugues to English
  40.  
  41. */
  42.  
  43. Options Results
  44.  
  45. tmpfile = 'Ram:FTransTmp.WORDWORTH'
  46. tmpclip = 'Ram:FTransWordWorth.Clip'
  47.  
  48. ARG traduz
  49.  
  50. /* TESTA SE PODE SER USADAS AS LIBS DO AREXX */
  51. if ~show(l, "rexxsupport.library") then
  52.   if ~addlib("rexxsupport.library", 0, -30) then
  53.     exit
  54. if ~show(l, "rexxtricks.library") then
  55.   if ~addlib("rexxtricks.library", 0, -30) then
  56.     exit
  57.  
  58. /* TESTA SE O PROGRAMA JA NAO ESTA COM A PORTA DE TRADUCAO ABERTA */
  59. if exists(tmpfile) then do
  60.   RequestNotify 'FTranslation port is open! Translation in progress, wait...'
  61.   exit
  62. end
  63.  
  64. COPY
  65.  
  66. /* PEGA O CONTEUDO DO CLIPBOARD */
  67. sel = ReadClipboard(0)
  68.  
  69. /* TESTA SE FOI SELECIONADO O TEXTO */
  70. if sel = "" then do
  71.   RequestNotify 'You need select text first...'
  72.   exit
  73. end
  74.  
  75. call open(1, tmpclip, 'W')
  76. call writeln(1, sel)
  77. call close(1)
  78.  
  79. /* COLOCA COMO DEFAULT PORTUGUES TO ENGLISH */
  80. if traduz = "" then do
  81.   Result = ""
  82.   WIZARDREQ TITLE "Freedom Translator Menu 1" LABEL "Select direction of your translation?" BUTTON 1 "Eng->Fra" BUTTON 2 "Eng->Deu" BUTTON 3 "Eng->Ita" BUTTON 4 "Eng->Por" BUTTON 5 "_Others Directions"
  83.   Select
  84.     When Result = -1 then exit
  85.     When Result = 1  then do; traduz = 0; INICIO(); end
  86.     When Result = 2  then do; traduz = 1; INICIO(); end
  87.     When Result = 3  then do; traduz = 2; INICIO(); end
  88.     When Result = 4  then do; traduz = 3; INICIO(); end
  89.     When Result = 5  then do
  90.       Result = ""
  91.       WIZARDREQ TITLE "Freedom Translator Menu 2" LABEL "Select direction of your translation?" BUTTON 1 "Eng->Esp" BUTTON 2 "Fra->Eng" BUTTON 3 "Deu->Eng" BUTTON 4 "Ita->Eng" BUTTON 5 "_Others Directions"
  92.       Select
  93.         When Result = -1 then exit
  94.         When Result = 1  then do; traduz = 4; INICIO(); end
  95.         When Result = 2  then do; traduz = 5; INICIO(); end
  96.         When Result = 3  then do; traduz = 6; INICIO(); end
  97.         When Result = 4  then do; traduz = 7; INICIO(); end
  98.         When Result = 5  then do
  99.           Result = ""
  100.           WIZARDREQ TITLE "Freedom Translator Menu 3" LABEL "Select direction of your translation?" BUTTON 1 "Esp->Eng" BUTTON 2 "Por->Eng"
  101.           Select
  102.             When Result = -1 then exit
  103.             When Result = 1  then do; traduz = 8; INICIO(); end
  104.             When Result = 2  then do; traduz = 9; INICIO(); end
  105.           end
  106.         end
  107.       end
  108.     end
  109.   end /* SELECT MENU 1 */
  110. end
  111.  
  112. INICIO()
  113.  
  114. INICIO:
  115.  
  116. /* EXECUTA O FTRANSLATOR COM OS ARGUMENTOS DA TRADUCAO */
  117. comando = 'C:FTranslator FILE 'traduz' "'tmpclip'" SILENCE > 'tmpfile
  118. Address Command comando
  119. Address Command 'Delete "'tmpclip'"'
  120.  
  121. NEW PORTNAME 'WORDWORTH.FTRANS'
  122. ADDRESS VALUE RESULT
  123. ADDRESS 'WORDWORTH.FTRANS'
  124. OPEN FILENAME tmpfile
  125.  
  126. Address Command 'Delete "'tmpfile'"'
  127.  
  128. exit
  129.  
  130.